let reverse = function(nums, start, end){
    while(start < end){
        [nums[start++], nums[end--]] = [nums[end], nums[start]];
    }
}
/**
 * @param {number[]} nums
 * @param {number} k
 * @return {void} Do not return anything, modify nums in-place instead.
 */

let rotate = function(nums, k) {
    k %= nums.length;
    reverse(nums, 0, nums.length - 1);
    reverse(nums, 0, k - 1);
    reverse(nums, k, nums.length - 1);
    return nums;
};

// 作者：御三五 🥇
// 链接：https://leetcode.cn/problems/rotate-array/solutions/683855/shu-zu-fan-zhuan-xuan-zhuan-shu-zu-by-de-5937/
//     来源：力扣（LeetCode）
// 著作权归作者所有。商业转载请联系作者获得授权，非商业转载请注明出处。
var arr =[1,2,3,4,5,6,7]
console.log(rotate(arr,2))
//这种方式...我没懂
// var rotate = function(nums, k) {
//     k = k % nums.length
//     nums.splice(0,0,...nums.splice(-k))
//     return nums
// };
// var arr =[1,2,3,4,5,6,7]
// console.log(rotate(arr,2))
